package cn.xumaoyang.basic.Interceptor;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * 拦截器的配置类。那些拦截那些不拦截就在这个类中写
 * 需要注解。@Configuration
 * 需要实现WebMvcConfigurer类。
 * 重写方法，addInterceptors
 * 注入拦截配置类。
 *
 *      拦截器拦截的是请求。
 */
@Configuration
public class WebConfigurer implements WebMvcConfigurer {

    //注入拦截配置类。
    @Autowired
    private LoginInterceptor loginInterceptor;

    //重写方法。
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        //把拦截配置类放入
        registry.addInterceptor(loginInterceptor)
                .addPathPatterns("/**")  //拦截所有,后面加/**的就是下面的所有都不拦截。
                .excludePathPatterns("/login/**")  //不拦截那些，登录界面不拦截。
                .excludePathPatterns("/shop/settlement")  //店铺入驻不拦截。
                .excludePathPatterns("/user/register")  //注册不拦截。
                .excludePathPatterns("/fastDfs/**")  //店铺入驻上传图片不拦截。
                .excludePathPatterns("/zhifu")  //支付宝不拦截。
                .excludePathPatterns("/verifycode/**");
    }
}
